<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>模板语法</title>
    <!-- 引入vue -->
    <script type="text/javascript" src="../js/vue.js"></script>
</head>

<body>
    <!-- 

    -->
    <!-- 准备好一个容器 -->
    <div id="root">

    </div>
    <script type="text/javascript">
        Vue.config.productionTip = false;//阻止vue在启动时生成生产提示

        //定义student组件
        const student = Vue.extend({
            name: "student",
            template: `
            <div>
                <h2>学生姓名:{{name}}</h2>
                <h2>学生年龄:{{age}}</h2>
            </div>
            `,
            data() {
                return {
                    name: "尚硅谷",
                    age: 18
                }
            },
        })

        //定义school组件
        const school = Vue.extend({
            name: "school",
            template: `
            <div>
                <h2>学校名称:{{name}}</h2>
                <h2>学校地址:{{address}}</h2>
                <student></student>
            </div>
            `,
            data() {
                return {
                    name: "尚硅谷",
                    address: "北京"
                }
            },
            components: {
                student
            }
        })

        //定义hello组件
        const hello = Vue.extend({
            template: `
                <h1>你好啊!{{msg}}</h1>
            `,
            data() {
                return {
                    msg: '欢迎来到尚硅谷学习!'
                }
            },
        })

        //定义app组件
        const app = Vue.extend({
            template: `
                <div>
                    <school></school>
                    <hello></hello>
                </div>
            `,
            components: {
                school,
                hello
            }
        })

        //创建vue实例
        const vm = new Vue({
            template: `<app></app>`,
            el: "#root",
            //注册组件(局部)
            components: {
                app
            }
        })
    </script>
</body>

</html>